<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Doxygen: pcl::ConditionalRemoval&lt; PointT &gt; 模板类 参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Doxygen
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classpcl_1_1_conditional_removal.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-types">Public 类型</a> &#124;
<a href="#pub-methods">Public 成员函数</a> &#124;
<a href="#pub-attribs">Public 属性</a> &#124;
<a href="#pro-methods">Protected 成员函数</a> &#124;
<a href="#pro-attribs">Protected 属性</a> &#124;
<a href="#pri-types">Private 类型</a> &#124;
<a href="classpcl_1_1_conditional_removal-members.html">所有成员列表</a>  </div>
  <div class="headertitle">
<div class="title">pcl::ConditionalRemoval&lt; PointT &gt; 模板类 参考</div>  </div>
</div><!--header-->
<div class="contents">

<p><b><a class="el" href="classpcl_1_1_conditional_removal.html" title="ConditionalRemoval filters data that satisfies certain conditions.">ConditionalRemoval</a></b> filters data that satisfies certain conditions.  
 <a href="classpcl_1_1_conditional_removal.html#details">更多...</a></p>

<p><code>#include &lt;<a class="el" href="conditional__removal_8h_source.html">conditional_removal.h</a>&gt;</code></p>
<div class="dynheader">
类 pcl::ConditionalRemoval&lt; PointT &gt; 继承关系图:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classpcl_1_1_conditional_removal.png" usemap="#pcl::ConditionalRemoval_3C_20PointT_20_3E_map" alt=""/>
  <map id="pcl::ConditionalRemoval_3C_20PointT_20_3E_map" name="pcl::ConditionalRemoval_3C_20PointT_20_3E_map">
<area href="classpcl_1_1_filter.html" title="Filter represents the base filter class. All filters must inherit from this interface." alt="pcl::Filter&lt; PointT &gt;" shape="rect" coords="0,56,205,80"/>
<area href="classpcl_1_1_p_c_l_base.html" title="PCL base class. Implements methods that are used by most PCL algorithms." alt="pcl::PCLBase&lt; PointT &gt;" shape="rect" coords="0,0,205,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public 类型</h2></td></tr>
<tr class="memitem:a4f4ae371ec8b833fd4f453839ad08785"><td class="memItemLeft" align="right" valign="top"><a id="a4f4ae371ec8b833fd4f453839ad08785"></a>
typedef <a class="el" href="classpcl_1_1_condition_base.html">pcl::ConditionBase</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ConditionBase</b></td></tr>
<tr class="separator:a4f4ae371ec8b833fd4f453839ad08785"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c2906d5b85ea591ffaf8af8a468df40"><td class="memItemLeft" align="right" valign="top"><a id="a9c2906d5b85ea591ffaf8af8a468df40"></a>
typedef ConditionBase::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>ConditionBasePtr</b></td></tr>
<tr class="separator:a9c2906d5b85ea591ffaf8af8a468df40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11c8bab996e9b7b52c2acfdd5583daf0"><td class="memItemLeft" align="right" valign="top"><a id="a11c8bab996e9b7b52c2acfdd5583daf0"></a>
typedef ConditionBase::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>ConditionBaseConstPtr</b></td></tr>
<tr class="separator:a11c8bab996e9b7b52c2acfdd5583daf0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Public 类型 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a719a1ef5a8fc3b7f4a651a8bae51571b inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a719a1ef5a8fc3b7f4a651a8bae51571b"></a>
typedef boost::shared_ptr&lt; <a class="el" href="classpcl_1_1_filter.html">Filter</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>Ptr</b></td></tr>
<tr class="separator:a719a1ef5a8fc3b7f4a651a8bae51571b inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01b992cf70e997979d7f653226a60ddd inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a01b992cf70e997979d7f653226a60ddd"></a>
typedef boost::shared_ptr&lt; const <a class="el" href="classpcl_1_1_filter.html">Filter</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ConstPtr</b></td></tr>
<tr class="separator:a01b992cf70e997979d7f653226a60ddd inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4f1d68bbc5f1f6b852b48b95e4673cfb inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a4f1d68bbc5f1f6b852b48b95e4673cfb"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:a4f1d68bbc5f1f6b852b48b95e4673cfb inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a335eb506b145ec1a09acc945b775246d inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a335eb506b145ec1a09acc945b775246d"></a>
typedef PointCloud::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudPtr</b></td></tr>
<tr class="separator:a335eb506b145ec1a09acc945b775246d inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5796101c9166820fac3a5ca961bde255 inherit pub_types_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a5796101c9166820fac3a5ca961bde255"></a>
typedef PointCloud::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudConstPtr</b></td></tr>
<tr class="separator:a5796101c9166820fac3a5ca961bde255 inherit pub_types_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_types_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Public 类型 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:ae2f6f6863a73337858b7a7a054eaae4f inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ae2f6f6863a73337858b7a7a054eaae4f"></a>
typedef <a class="el" href="classpcl_1_1_point_cloud.html">pcl::PointCloud</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:ae2f6f6863a73337858b7a7a054eaae4f inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab84dd662cda89edb882fe5307b2136ea inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ab84dd662cda89edb882fe5307b2136ea"></a>
typedef PointCloud::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudPtr</b></td></tr>
<tr class="separator:ab84dd662cda89edb882fe5307b2136ea inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac8326513fad0680b6993e2f1a79a6af4 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ac8326513fad0680b6993e2f1a79a6af4"></a>
typedef PointCloud::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudConstPtr</b></td></tr>
<tr class="separator:ac8326513fad0680b6993e2f1a79a6af4 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae51eae0c7b3e0b7178f4894dff90660a inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ae51eae0c7b3e0b7178f4894dff90660a"></a>
typedef boost::shared_ptr&lt; <a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointIndicesPtr</b></td></tr>
<tr class="separator:ae51eae0c7b3e0b7178f4894dff90660a inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51771056fb4ab8c448a11157acbe2ee0 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a51771056fb4ab8c448a11157acbe2ee0"></a>
typedef boost::shared_ptr&lt; <a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> const  &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>PointIndicesConstPtr</b></td></tr>
<tr class="separator:a51771056fb4ab8c448a11157acbe2ee0 inherit pub_types_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public 成员函数</h2></td></tr>
<tr class="memitem:a46d48542fa99bf5d338506506fbf9125"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_conditional_removal.html#a46d48542fa99bf5d338506506fbf9125">ConditionalRemoval</a> (int extract_removed_indices=false)</td></tr>
<tr class="memdesc:a46d48542fa99bf5d338506506fbf9125"><td class="mdescLeft">&#160;</td><td class="mdescRight">the default constructor. <br  />
  <a href="classpcl_1_1_conditional_removal.html#a46d48542fa99bf5d338506506fbf9125">更多...</a><br /></td></tr>
<tr class="separator:a46d48542fa99bf5d338506506fbf9125"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a377e5aac705db7a2ff0bc00bf090a94f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_conditional_removal.html#a377e5aac705db7a2ff0bc00bf090a94f">PCL_DEPRECATED</a> (&quot;ConditionalRemoval(ConditionBasePtr condition, bool extract_removed_indices = false) is deprecated, &quot; &quot;please use the setCondition (ConditionBasePtr condition) function instead.&quot;) ConditionalRemoval(ConditionBasePtr condition</td></tr>
<tr class="memdesc:a377e5aac705db7a2ff0bc00bf090a94f"><td class="mdescLeft">&#160;</td><td class="mdescRight">a constructor that includes the condition. <br  />
  <a href="classpcl_1_1_conditional_removal.html#a377e5aac705db7a2ff0bc00bf090a94f">更多...</a><br /></td></tr>
<tr class="separator:a377e5aac705db7a2ff0bc00bf090a94f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Public 成员函数 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:af31e766a9092a766962f42005c1b84a4 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#af31e766a9092a766962f42005c1b84a4">Filter</a> (bool extract_removed_indices=false)</td></tr>
<tr class="memdesc:af31e766a9092a766962f42005c1b84a4 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor.  <a href="classpcl_1_1_filter.html#af31e766a9092a766962f42005c1b84a4">更多...</a><br /></td></tr>
<tr class="separator:af31e766a9092a766962f42005c1b84a4 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11163e4d01519df900e6144f705f6980 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a11163e4d01519df900e6144f705f6980"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a11163e4d01519df900e6144f705f6980">~Filter</a> ()</td></tr>
<tr class="memdesc:a11163e4d01519df900e6144f705f6980 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty destructor <br /></td></tr>
<tr class="separator:a11163e4d01519df900e6144f705f6980 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae451ce8a0981e8589812d4f3b135a335 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="ae451ce8a0981e8589812d4f3b135a335"></a>
IndicesConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#ae451ce8a0981e8589812d4f3b135a335">getRemovedIndices</a> ()</td></tr>
<tr class="memdesc:ae451ce8a0981e8589812d4f3b135a335 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the point indices being removed <br /></td></tr>
<tr class="separator:ae451ce8a0981e8589812d4f3b135a335 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add67775d121c2dd536d3306ef447431e inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#add67775d121c2dd536d3306ef447431e">getRemovedIndices</a> (<a class="el" href="structpcl_1_1_point_indices.html">PointIndices</a> &amp;pi)</td></tr>
<tr class="memdesc:add67775d121c2dd536d3306ef447431e inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the point indices being removed  <a href="classpcl_1_1_filter.html#add67775d121c2dd536d3306ef447431e">更多...</a><br /></td></tr>
<tr class="separator:add67775d121c2dd536d3306ef447431e inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17115897ca28f6b12950d023958aa641 inherit pub_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a17115897ca28f6b12950d023958aa641">filter</a> (<a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a> &amp;output)</td></tr>
<tr class="memdesc:a17115897ca28f6b12950d023958aa641 inherit pub_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calls the filtering method and returns the filtered dataset in output.  <a href="classpcl_1_1_filter.html#a17115897ca28f6b12950d023958aa641">更多...</a><br /></td></tr>
<tr class="separator:a17115897ca28f6b12950d023958aa641 inherit pub_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Public 成员函数 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="af4fbc5eb005057f8a0fc6d60bde595df"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af4fbc5eb005057f8a0fc6d60bde595df">PCLBase</a> ()</td></tr>
<tr class="memdesc:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Empty constructor. <br /></td></tr>
<tr class="separator:af4fbc5eb005057f8a0fc6d60bde595df inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a7a6dd7a91275d7737cf1b18005b47244"></a>
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a7a6dd7a91275d7737cf1b18005b47244">PCLBase</a> (const <a class="el" href="classpcl_1_1_p_c_l_base.html">PCLBase</a> &amp;base)</td></tr>
<tr class="memdesc:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <br /></td></tr>
<tr class="separator:a7a6dd7a91275d7737cf1b18005b47244 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ad5d6846e98e59c37dcc3dc9958d53966"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ad5d6846e98e59c37dcc3dc9958d53966">~PCLBase</a> ()</td></tr>
<tr class="memdesc:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
<tr class="separator:ad5d6846e98e59c37dcc3dc9958d53966 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a1952d7101f3942bac3b69ed55c1ca7ea">setInputCloud</a> (const PointCloudConstPtr &amp;cloud)</td></tr>
<tr class="memdesc:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the input dataset  <a href="classpcl_1_1_p_c_l_base.html#a1952d7101f3942bac3b69ed55c1ca7ea">更多...</a><br /></td></tr>
<tr class="separator:a1952d7101f3942bac3b69ed55c1ca7ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a8cd745c4f7a792212f4fc3720b9d46ea"></a>
PointCloudConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a8cd745c4f7a792212f4fc3720b9d46ea">getInputCloud</a> () const</td></tr>
<tr class="memdesc:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the input point cloud dataset. <br /></td></tr>
<tr class="separator:a8cd745c4f7a792212f4fc3720b9d46ea inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ab219359de6eb34c9d51e2e976dd1a0d1">setIndices</a> (const IndicesPtr &amp;indices)</td></tr>
<tr class="memdesc:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#ab219359de6eb34c9d51e2e976dd1a0d1">更多...</a><br /></td></tr>
<tr class="separator:ab219359de6eb34c9d51e2e976dd1a0d1 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a436c68c74b31e4dd00000adfbb11ca7c">setIndices</a> (const IndicesConstPtr &amp;indices)</td></tr>
<tr class="memdesc:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#a436c68c74b31e4dd00000adfbb11ca7c">更多...</a><br /></td></tr>
<tr class="separator:a436c68c74b31e4dd00000adfbb11ca7c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af9cc90d8364ce968566f75800d3773ca">setIndices</a> (const PointIndicesConstPtr &amp;indices)</td></tr>
<tr class="memdesc:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provide a pointer to the vector of indices that represents the input data.  <a href="classpcl_1_1_p_c_l_base.html#af9cc90d8364ce968566f75800d3773ca">更多...</a><br /></td></tr>
<tr class="separator:af9cc90d8364ce968566f75800d3773ca inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a930c7a6375fdf65ff8cfdb4eb4a6d996">setIndices</a> (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols)</td></tr>
<tr class="memdesc:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the indices for the points laying within an interest region of the point cloud.  <a href="classpcl_1_1_p_c_l_base.html#a930c7a6375fdf65ff8cfdb4eb4a6d996">更多...</a><br /></td></tr>
<tr class="separator:a930c7a6375fdf65ff8cfdb4eb4a6d996 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a058753dd4de73d3d0062fe2e452fba3c"></a>
IndicesPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a058753dd4de73d3d0062fe2e452fba3c">getIndices</a> ()</td></tr>
<tr class="memdesc:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the vector of indices used. <br /></td></tr>
<tr class="separator:a058753dd4de73d3d0062fe2e452fba3c inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="acae187b37230758959572ceb1e6e2045"></a>
IndicesConstPtr const&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#acae187b37230758959572ceb1e6e2045">getIndices</a> () const</td></tr>
<tr class="memdesc:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a pointer to the vector of indices used. <br /></td></tr>
<tr class="separator:acae187b37230758959572ceb1e6e2045 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#af7335fedb0af0930b9d1dedcb54ba201">operator[]</a> (size_t pos) const</td></tr>
<tr class="memdesc:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Override <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a> operator[] to shorten code  <a href="classpcl_1_1_p_c_l_base.html#af7335fedb0af0930b9d1dedcb54ba201">更多...</a><br /></td></tr>
<tr class="separator:af7335fedb0af0930b9d1dedcb54ba201 inherit pub_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public 属性</h2></td></tr>
<tr class="memitem:ac7fc2f1f6f7fac1268089c05942e9912"><td class="memItemLeft" align="right" valign="top"><a id="ac7fc2f1f6f7fac1268089c05942e9912"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>extract_removed_indices</b></td></tr>
<tr class="separator:ac7fc2f1f6f7fac1268089c05942e9912"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected 成员函数</h2></td></tr>
<tr class="memitem:a1fddb6f21d057f41a77e73b4168ffb8c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_conditional_removal.html#a1fddb6f21d057f41a77e73b4168ffb8c">applyFilter</a> (<a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a> &amp;output)</td></tr>
<tr class="memdesc:a1fddb6f21d057f41a77e73b4168ffb8c"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classpcl_1_1_filter.html" title="Filter represents the base filter class. All filters must inherit from this interface.">Filter</a> a Point <a class="el" href="class_cloud.html" title="A wrapper which allows to use any implementation of cloud provided by a third-party library.">Cloud</a>.  <a href="classpcl_1_1_conditional_removal.html#a1fddb6f21d057f41a77e73b4168ffb8c">更多...</a><br /></td></tr>
<tr class="separator:a1fddb6f21d057f41a77e73b4168ffb8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Protected 成员函数 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a71040236d2c11da75b715d6d6bf5ba9d inherit pro_methods_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a71040236d2c11da75b715d6d6bf5ba9d"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a71040236d2c11da75b715d6d6bf5ba9d">getClassName</a> () const</td></tr>
<tr class="memdesc:a71040236d2c11da75b715d6d6bf5ba9d inherit pro_methods_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a string representation of the name of this class. <br /></td></tr>
<tr class="separator:a71040236d2c11da75b715d6d6bf5ba9d inherit pro_methods_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Protected 成员函数 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#acceb20854934f4cf77e266eb5a44d4f0">initCompute</a> ()</td></tr>
<tr class="memdesc:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should get called before starting the actual computation.  <a href="classpcl_1_1_p_c_l_base.html#acceb20854934f4cf77e266eb5a44d4f0">更多...</a><br /></td></tr>
<tr class="separator:acceb20854934f4cf77e266eb5a44d4f0 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="afc426c4eebb94b7734d4fa556bff1420"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#afc426c4eebb94b7734d4fa556bff1420">deinitCompute</a> ()</td></tr>
<tr class="memdesc:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method should get called after finishing the actual computation. <br /></td></tr>
<tr class="separator:afc426c4eebb94b7734d4fa556bff1420 inherit pro_methods_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
Protected 属性</h2></td></tr>
<tr class="memitem:aae9f7e32368f219e98b16176301fe6c5"><td class="memItemLeft" align="right" valign="top"><a id="aae9f7e32368f219e98b16176301fe6c5"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_conditional_removal.html#aae9f7e32368f219e98b16176301fe6c5">capable_</a></td></tr>
<tr class="memdesc:aae9f7e32368f219e98b16176301fe6c5"><td class="mdescLeft">&#160;</td><td class="mdescRight">True if capable. <br /></td></tr>
<tr class="separator:aae9f7e32368f219e98b16176301fe6c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69623ed3e8e80d356b046c2c2ada12e1"><td class="memItemLeft" align="right" valign="top"><a id="a69623ed3e8e80d356b046c2c2ada12e1"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_conditional_removal.html#a69623ed3e8e80d356b046c2c2ada12e1">keep_organized_</a></td></tr>
<tr class="memdesc:a69623ed3e8e80d356b046c2c2ada12e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Keep the structure of the data organized, by setting the filtered points to the a user given value (NaN by default). <br /></td></tr>
<tr class="separator:a69623ed3e8e80d356b046c2c2ada12e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77588785cb0a485225242ca0fde71880"><td class="memItemLeft" align="right" valign="top"><a id="a77588785cb0a485225242ca0fde71880"></a>
ConditionBasePtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_conditional_removal.html#a77588785cb0a485225242ca0fde71880">condition_</a></td></tr>
<tr class="memdesc:a77588785cb0a485225242ca0fde71880"><td class="mdescLeft">&#160;</td><td class="mdescRight">The condition to use for filtering <br /></td></tr>
<tr class="separator:a77588785cb0a485225242ca0fde71880"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af139981b76f745814433500fd54d69db"><td class="memItemLeft" align="right" valign="top"><a id="af139981b76f745814433500fd54d69db"></a>
float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_conditional_removal.html#af139981b76f745814433500fd54d69db">user_filter_value_</a></td></tr>
<tr class="memdesc:af139981b76f745814433500fd54d69db"><td class="mdescLeft">&#160;</td><td class="mdescRight">User given value to be set to any filtered point. Casted to the correct field type. <br /></td></tr>
<tr class="separator:af139981b76f745814433500fd54d69db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classpcl_1_1_filter"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpcl_1_1_filter')"><img src="closed.png" alt="-"/>&#160;Protected 属性 继承自 <a class="el" href="classpcl_1_1_filter.html">pcl::Filter&lt; PointT &gt;</a></td></tr>
<tr class="memitem:ae83ccb695ed263cfc64c224210a31936 inherit pro_attribs_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="ae83ccb695ed263cfc64c224210a31936"></a>
IndicesPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a></td></tr>
<tr class="memdesc:ae83ccb695ed263cfc64c224210a31936 inherit pro_attribs_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indices of the points that are removed <br /></td></tr>
<tr class="separator:ae83ccb695ed263cfc64c224210a31936 inherit pro_attribs_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad700c7ab56dc82ad8811b87e9f793751 inherit pro_attribs_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="ad700c7ab56dc82ad8811b87e9f793751"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#ad700c7ab56dc82ad8811b87e9f793751">filter_name_</a></td></tr>
<tr class="memdesc:ad700c7ab56dc82ad8811b87e9f793751 inherit pro_attribs_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">The filter name. <br /></td></tr>
<tr class="separator:ad700c7ab56dc82ad8811b87e9f793751 inherit pro_attribs_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77b899631add791703f5d615f085bede inherit pro_attribs_classpcl_1_1_filter"><td class="memItemLeft" align="right" valign="top"><a id="a77b899631add791703f5d615f085bede"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a></td></tr>
<tr class="memdesc:a77b899631add791703f5d615f085bede inherit pro_attribs_classpcl_1_1_filter"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to true if we want to return the indices of the removed points. <br /></td></tr>
<tr class="separator:a77b899631add791703f5d615f085bede inherit pro_attribs_classpcl_1_1_filter"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classpcl_1_1_p_c_l_base"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classpcl_1_1_p_c_l_base')"><img src="closed.png" alt="-"/>&#160;Protected 属性 继承自 <a class="el" href="classpcl_1_1_p_c_l_base.html">pcl::PCLBase&lt; PointT &gt;</a></td></tr>
<tr class="memitem:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="a09c70d8e06e3fb4f07903fe6f8d67869"></a>
PointCloudConstPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a></td></tr>
<tr class="memdesc:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">The input point cloud dataset. <br /></td></tr>
<tr class="separator:a09c70d8e06e3fb4f07903fe6f8d67869 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="aaee847c8a517ebf365bad2cb182a6626"></a>
IndicesPtr&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">indices_</a></td></tr>
<tr class="memdesc:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">A pointer to the vector of point indices to use. <br /></td></tr>
<tr class="separator:aaee847c8a517ebf365bad2cb182a6626 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="ada1eadb824d34ca9206a86343d9760bb"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#ada1eadb824d34ca9206a86343d9760bb">use_indices_</a></td></tr>
<tr class="memdesc:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to true if point indices are used. <br /></td></tr>
<tr class="separator:ada1eadb824d34ca9206a86343d9760bb inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memItemLeft" align="right" valign="top"><a id="adadb0299f144528020ed558af6879662"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classpcl_1_1_p_c_l_base.html#adadb0299f144528020ed558af6879662">fake_indices_</a></td></tr>
<tr class="memdesc:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="mdescLeft">&#160;</td><td class="mdescRight">If no set of indices are given, we construct a set of fake indices that mimic the input <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a>. <br /></td></tr>
<tr class="separator:adadb0299f144528020ed558af6879662 inherit pro_attribs_classpcl_1_1_p_c_l_base"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-types"></a>
Private 类型</h2></td></tr>
<tr class="memitem:aff3b477328ca6dbf6cf7454c2e368f6e"><td class="memItemLeft" align="right" valign="top"><a id="aff3b477328ca6dbf6cf7454c2e368f6e"></a>
typedef <a class="el" href="classpcl_1_1_filter.html">Filter</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;::<a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a>&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloud</b></td></tr>
<tr class="separator:aff3b477328ca6dbf6cf7454c2e368f6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad8a6bb8e68c76f7742a44bf0fb5f54cd"><td class="memItemLeft" align="right" valign="top"><a id="ad8a6bb8e68c76f7742a44bf0fb5f54cd"></a>
typedef PointCloud::Ptr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudPtr</b></td></tr>
<tr class="separator:ad8a6bb8e68c76f7742a44bf0fb5f54cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80244d0328f5399c4c1b649522dd227c"><td class="memItemLeft" align="right" valign="top"><a id="a80244d0328f5399c4c1b649522dd227c"></a>
typedef PointCloud::ConstPtr&#160;</td><td class="memItemRight" valign="bottom"><b>PointCloudConstPtr</b></td></tr>
<tr class="separator:a80244d0328f5399c4c1b649522dd227c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">详细描述</h2>
<div class="textblock"><h3>template&lt;typename PointT&gt;<br />
class pcl::ConditionalRemoval&lt; PointT &gt;</h3>

<p><b><a class="el" href="classpcl_1_1_conditional_removal.html" title="ConditionalRemoval filters data that satisfies certain conditions.">ConditionalRemoval</a></b> filters data that satisfies certain conditions. </p>
<p>A <a class="el" href="classpcl_1_1_conditional_removal.html" title="ConditionalRemoval filters data that satisfies certain conditions.">ConditionalRemoval</a> must be provided a condition. There are two types of conditions: <a class="el" href="classpcl_1_1_condition_and.html" title="AND condition.">ConditionAnd</a> and <a class="el" href="classpcl_1_1_condition_or.html" title="OR condition.">ConditionOr</a>. Conditions require one or more comparisons and/or other conditions. A comparison has a name, a comparison operator, and a value.</p>
<p>An <a class="el" href="classpcl_1_1_condition_and.html" title="AND condition.">ConditionAnd</a> will evaluate to true when ALL of its encapsulated comparisons and conditions are true.</p>
<p>An <a class="el" href="classpcl_1_1_condition_or.html" title="OR condition.">ConditionOr</a> will evaluate to true when ANY of its encapsulated comparisons and conditions are true.</p>
<p>Depending on the derived type of the comparison, the name can correspond to a <a class="el" href="classpcl_1_1_point_cloud.html" title="PointCloud represents the base class in PCL for storing collections of 3D points.">PointCloud</a> field name, or a color component in rgb color space or hsi color space.</p>
<p>Here is an example usage: // Build the condition pcl::ConditionAnd&lt;PointT&gt;::Ptr range_cond (new pcl::ConditionAnd&lt;PointT&gt; ()); range_cond-&gt;addComparison (pcl::FieldComparison&lt;PointT&gt;::Ptr (new pcl::FieldComparison&lt;PointT&gt;("z", pcl::ComparisonOps::LT, 2.0))); range_cond-&gt;addComparison (pcl::FieldComparison&lt;PointT&gt;::Ptr (new pcl::FieldComparison&lt;PointT&gt;("z", pcl::ComparisonOps::GT, 0.0))); // Build the filter pcl::ConditionalRemoval&lt;PointT&gt; range_filt; range_filt.setCondition (range_cond); range_filt.setKeepOrganized (false);</p>
<dl class="section author"><dt>作者</dt><dd>Louis LeGrand, Intel Labs Seattle </dd></dl>
</div><h2 class="groupheader">构造及析构函数说明</h2>
<a id="a46d48542fa99bf5d338506506fbf9125"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46d48542fa99bf5d338506506fbf9125">&#9670;&nbsp;</a></span>ConditionalRemoval()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpcl_1_1_conditional_removal.html">pcl::ConditionalRemoval</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;::<a class="el" href="classpcl_1_1_conditional_removal.html">ConditionalRemoval</a> </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>extract_removed_indices</em> = <code>false</code></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>the default constructor. <br  />
 </p>
<p>All ConditionalRemovals require a condition which can be set using the setCondition method </p><dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">extract_removed_indices</td><td>extract filtered indices from indices vector </td></tr>
  </table>
  </dd>
</dl>
<div class="fragment"><div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;                                                               :</div>
<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160;        <a class="code" href="classpcl_1_1_filter.html#af31e766a9092a766962f42005c1b84a4">Filter&lt;PointT&gt;::Filter</a> (extract_removed_indices), <a class="code" href="classpcl_1_1_conditional_removal.html#aae9f7e32368f219e98b16176301fe6c5">capable_</a> (<span class="keyword">false</span>), <a class="code" href="classpcl_1_1_conditional_removal.html#a69623ed3e8e80d356b046c2c2ada12e1">keep_organized_</a> (<span class="keyword">false</span>), <a class="code" href="classpcl_1_1_conditional_removal.html#a77588785cb0a485225242ca0fde71880">condition_</a> (),</div>
<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;        <a class="code" href="classpcl_1_1_conditional_removal.html#af139981b76f745814433500fd54d69db">user_filter_value_</a> (std::numeric_limits&lt;float&gt;::quiet_NaN ())</div>
<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;      {</div>
<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;        <a class="code" href="classpcl_1_1_filter.html#ad700c7ab56dc82ad8811b87e9f793751">filter_name_</a> = <span class="stringliteral">&quot;ConditionalRemoval&quot;</span>;</div>
<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;      }</div>
<div class="ttc" id="aclasspcl_1_1_conditional_removal_html_a69623ed3e8e80d356b046c2c2ada12e1"><div class="ttname"><a href="classpcl_1_1_conditional_removal.html#a69623ed3e8e80d356b046c2c2ada12e1">pcl::ConditionalRemoval::keep_organized_</a></div><div class="ttdeci">bool keep_organized_</div><div class="ttdoc">Keep the structure of the data organized, by setting the filtered points to the a user given value (N...</div><div class="ttdef"><b>Definition:</b> conditional_removal.h:693</div></div>
<div class="ttc" id="aclasspcl_1_1_conditional_removal_html_a77588785cb0a485225242ca0fde71880"><div class="ttname"><a href="classpcl_1_1_conditional_removal.html#a77588785cb0a485225242ca0fde71880">pcl::ConditionalRemoval::condition_</a></div><div class="ttdeci">ConditionBasePtr condition_</div><div class="ttdoc">The condition to use for filtering</div><div class="ttdef"><b>Definition:</b> conditional_removal.h:696</div></div>
<div class="ttc" id="aclasspcl_1_1_conditional_removal_html_aae9f7e32368f219e98b16176301fe6c5"><div class="ttname"><a href="classpcl_1_1_conditional_removal.html#aae9f7e32368f219e98b16176301fe6c5">pcl::ConditionalRemoval::capable_</a></div><div class="ttdeci">bool capable_</div><div class="ttdoc">True if capable.</div><div class="ttdef"><b>Definition:</b> conditional_removal.h:688</div></div>
<div class="ttc" id="aclasspcl_1_1_conditional_removal_html_af139981b76f745814433500fd54d69db"><div class="ttname"><a href="classpcl_1_1_conditional_removal.html#af139981b76f745814433500fd54d69db">pcl::ConditionalRemoval::user_filter_value_</a></div><div class="ttdeci">float user_filter_value_</div><div class="ttdoc">User given value to be set to any filtered point. Casted to the correct field type.</div><div class="ttdef"><b>Definition:</b> conditional_removal.h:701</div></div>
<div class="ttc" id="aclasspcl_1_1_filter_html_ad700c7ab56dc82ad8811b87e9f793751"><div class="ttname"><a href="classpcl_1_1_filter.html#ad700c7ab56dc82ad8811b87e9f793751">pcl::Filter::filter_name_</a></div><div class="ttdeci">std::string filter_name_</div><div class="ttdoc">The filter name.</div><div class="ttdef"><b>Definition:</b> filter.h:166</div></div>
<div class="ttc" id="aclasspcl_1_1_filter_html_af31e766a9092a766962f42005c1b84a4"><div class="ttname"><a href="classpcl_1_1_filter.html#af31e766a9092a766962f42005c1b84a4">pcl::Filter::Filter</a></div><div class="ttdeci">Filter(bool extract_removed_indices=false)</div><div class="ttdoc">Empty constructor.</div><div class="ttdef"><b>Definition:</b> filter.h:102</div></div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">成员函数说明</h2>
<a id="a1fddb6f21d057f41a77e73b4168ffb8c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1fddb6f21d057f41a77e73b4168ffb8c">&#9670;&nbsp;</a></span>applyFilter()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT &gt; </div>
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classpcl_1_1_conditional_removal.html">pcl::ConditionalRemoval</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;::applyFilter </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classpcl_1_1_point_cloud.html">PointCloud</a> &amp;&#160;</td>
          <td class="paramname"><em>output</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p><a class="el" href="classpcl_1_1_filter.html" title="Filter represents the base filter class. All filters must inherit from this interface.">Filter</a> a Point <a class="el" href="class_cloud.html" title="A wrapper which allows to use any implementation of cloud provided by a third-party library.">Cloud</a>. </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">output</td><td>the resultant point cloud message </td></tr>
  </table>
  </dd>
</dl>

<p>实现了 <a class="el" href="classpcl_1_1_filter.html#a1f703f36f50546e950f03af2453da623">pcl::Filter&lt; PointT &gt;</a>.</p>
<div class="fragment"><div class="line"><a name="l00672"></a><span class="lineno">  672</span>&#160;{</div>
<div class="line"><a name="l00673"></a><span class="lineno">  673</span>&#160;  <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_conditional_removal.html#aae9f7e32368f219e98b16176301fe6c5">capable_</a> == <span class="keyword">false</span>)</div>
<div class="line"><a name="l00674"></a><span class="lineno">  674</span>&#160;  {</div>
<div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;    PCL_WARN (<span class="stringliteral">&quot;[pcl::%s::applyFilter] not capable!\n&quot;</span>, <a class="code" href="classpcl_1_1_filter.html#a71040236d2c11da75b715d6d6bf5ba9d">getClassName</a> ().c_str ());</div>
<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;    <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;  }</div>
<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160;  <span class="comment">// Has the input dataset been set already?</span></div>
<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;  <span class="keywordflow">if</span> (!<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>)</div>
<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160;  {</div>
<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;    PCL_WARN (<span class="stringliteral">&quot;[pcl::%s::applyFilter] No input dataset given!\n&quot;</span>, <a class="code" href="classpcl_1_1_filter.html#a71040236d2c11da75b715d6d6bf5ba9d">getClassName</a> ().c_str ());</div>
<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160;    <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;  }</div>
<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160; </div>
<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;  <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_conditional_removal.html#a77588785cb0a485225242ca0fde71880">condition_</a>.get () == NULL) </div>
<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160;  {</div>
<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;    PCL_WARN (<span class="stringliteral">&quot;[pcl::%s::applyFilter] No filtering condition given!\n&quot;</span>, <a class="code" href="classpcl_1_1_filter.html#a71040236d2c11da75b715d6d6bf5ba9d">getClassName</a> ().c_str ());</div>
<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;    <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;  }</div>
<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160; </div>
<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;  <span class="comment">// Copy the header (and thus the frame_id) + allocate enough space for points</span></div>
<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;  output.<a class="code" href="classpcl_1_1_point_cloud.html#a82e0be055a617e5e74102ed62712b352">header</a>       = <a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;header;</div>
<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;  <span class="keywordflow">if</span> (!<a class="code" href="classpcl_1_1_conditional_removal.html#a69623ed3e8e80d356b046c2c2ada12e1">keep_organized_</a>)</div>
<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160;  {</div>
<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#a4f34b45220c57f96607513ffad0d9582">height</a>    = 1;   <span class="comment">// filtering breaks the organized structure</span></div>
<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">is_dense</a>  = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;  } </div>
<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;  <span class="keywordflow">else</span> </div>
<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;  {</div>
<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#a4f34b45220c57f96607513ffad0d9582">height</a>   = this-&gt;<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;height;</div>
<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#a2185a6453f8ad905d7bdf7b45754a160">width</a>    = this-&gt;<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;width;</div>
<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">is_dense</a> = this-&gt;<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;is_dense;</div>
<div class="line"><a name="l00703"></a><span class="lineno">  703</span>&#160;  }</div>
<div class="line"><a name="l00704"></a><span class="lineno">  704</span>&#160;  output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>.resize (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points.size ());</div>
<div class="line"><a name="l00705"></a><span class="lineno">  705</span>&#160;  <a class="code" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a>-&gt;resize (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points.size ());</div>
<div class="line"><a name="l00706"></a><span class="lineno">  706</span>&#160; </div>
<div class="line"><a name="l00707"></a><span class="lineno">  707</span>&#160;  <span class="keywordtype">int</span> nr_p = 0;</div>
<div class="line"><a name="l00708"></a><span class="lineno">  708</span>&#160;  <span class="keywordtype">int</span> nr_removed_p = 0;</div>
<div class="line"><a name="l00709"></a><span class="lineno">  709</span>&#160; </div>
<div class="line"><a name="l00710"></a><span class="lineno">  710</span>&#160;  <span class="keywordflow">if</span> (!<a class="code" href="classpcl_1_1_conditional_removal.html#a69623ed3e8e80d356b046c2c2ada12e1">keep_organized_</a>)</div>
<div class="line"><a name="l00711"></a><span class="lineno">  711</span>&#160;  {</div>
<div class="line"><a name="l00712"></a><span class="lineno">  712</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cp = 0; cp &lt; Filter&lt;PointT&gt;::indices_-&gt;size (); ++cp)</div>
<div class="line"><a name="l00713"></a><span class="lineno">  713</span>&#160;    {</div>
<div class="line"><a name="l00714"></a><span class="lineno">  714</span>&#160;      <span class="comment">// Check if the point is invalid</span></div>
<div class="line"><a name="l00715"></a><span class="lineno">  715</span>&#160;      <span class="keywordflow">if</span> (!pcl_isfinite (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points[(*<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter &lt; PointT &gt; ::indices_</a>)[cp]].x)</div>
<div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;          || !pcl_isfinite (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points[(*<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter &lt; PointT &gt; ::indices_</a>)[cp]].y)</div>
<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;          || !pcl_isfinite (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points[(*<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter &lt; PointT &gt; ::indices_</a>)[cp]].z))</div>
<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;      {</div>
<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a>)</div>
<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;        {</div>
<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160;          (*removed_indices_)[nr_removed_p] = (*<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter&lt;PointT&gt;::indices_</a>)[cp];</div>
<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;          nr_removed_p++;</div>
<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160;        }</div>
<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;        <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160;      }</div>
<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160; </div>
<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;      <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_conditional_removal.html#a77588785cb0a485225242ca0fde71880">condition_</a>-&gt;evaluate (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points[(*<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter &lt; PointT &gt; ::indices_</a>)[cp]]))</div>
<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;      {</div>
<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;        <a class="code" href="group__common.html#gab978bf1754771246b2f140a5b52a8f8b">copyPoint</a> (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points[(*<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter &lt; PointT &gt; ::indices_</a>)[cp]], output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>[nr_p]);</div>
<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;        nr_p++;</div>
<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;      }</div>
<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160;      <span class="keywordflow">else</span></div>
<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;      {</div>
<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a>)</div>
<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;        {</div>
<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;          (*removed_indices_)[nr_removed_p] = (*<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter&lt;PointT&gt;::indices_</a>)[cp];</div>
<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160;          nr_removed_p++;</div>
<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;        }</div>
<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;      }</div>
<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;    }</div>
<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160; </div>
<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#a2185a6453f8ad905d7bdf7b45754a160">width</a> = nr_p;</div>
<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;    output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>.resize (nr_p);</div>
<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;  }</div>
<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;  <span class="keywordflow">else</span></div>
<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;  {</div>
<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;    std::vector&lt;int&gt; indices = *<a class="code" href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">Filter&lt;PointT&gt;::indices_</a>;</div>
<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;    std::sort (indices.begin (), indices.end ());   <span class="comment">//TODO: is this necessary or can we assume the indices to be sorted?</span></div>
<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;    <span class="keywordtype">bool</span> removed_p = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;    <span class="keywordtype">size_t</span> ci = 0;</div>
<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> cp = 0; cp &lt; <a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points.size (); ++cp)</div>
<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160;    {</div>
<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;      <span class="keywordflow">if</span> (cp == <span class="keyword">static_cast&lt;</span><span class="keywordtype">size_t</span><span class="keyword">&gt;</span> (indices[ci]))</div>
<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;      {</div>
<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;        <span class="keywordflow">if</span> (ci &lt; indices.size () - 1)</div>
<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160;        {</div>
<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;          ci++;</div>
<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;          <span class="keywordflow">if</span> (cp == <span class="keyword">static_cast&lt;</span><span class="keywordtype">size_t</span><span class="keyword">&gt;</span> (indices[ci]))   <span class="comment">//check whether the next index will have the same value. TODO: necessary?</span></div>
<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;            <span class="keywordflow">continue</span>;</div>
<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160;        }</div>
<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160; </div>
<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;        <span class="comment">// copy all the fields</span></div>
<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;        <a class="code" href="group__common.html#gab978bf1754771246b2f140a5b52a8f8b">copyPoint</a> (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points[cp], output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>[cp]);</div>
<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160; </div>
<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="classpcl_1_1_conditional_removal.html#a77588785cb0a485225242ca0fde71880">condition_</a>-&gt;evaluate (<a class="code" href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">input_</a>-&gt;points[cp]))</div>
<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;        {</div>
<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160;          output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>[cp].getVector4fMap ().setConstant (<a class="code" href="classpcl_1_1_conditional_removal.html#af139981b76f745814433500fd54d69db">user_filter_value_</a>);</div>
<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;          removed_p = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160; </div>
<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;          <span class="keywordflow">if</span> (<a class="code" href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">extract_removed_indices_</a>)</div>
<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;          {</div>
<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;            (*removed_indices_)[nr_removed_p] = <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span> (cp);</div>
<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;            nr_removed_p++;</div>
<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;          }</div>
<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;        }</div>
<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;      }</div>
<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;      <span class="keywordflow">else</span></div>
<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;      {</div>
<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;        output.<a class="code" href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">points</a>[cp].getVector4fMap ().setConstant (<a class="code" href="classpcl_1_1_conditional_removal.html#af139981b76f745814433500fd54d69db">user_filter_value_</a>);</div>
<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;        removed_p = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160;        <span class="comment">//as for !keep_organized_: removed points due to setIndices are not considered as removed_indices_</span></div>
<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;      }</div>
<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;    }</div>
<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160; </div>
<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;    <span class="keywordflow">if</span> (removed_p &amp;&amp; !pcl_isfinite (<a class="code" href="classpcl_1_1_conditional_removal.html#af139981b76f745814433500fd54d69db">user_filter_value_</a>))</div>
<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;      output.<a class="code" href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">is_dense</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;  }</div>
<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;  <a class="code" href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">removed_indices_</a>-&gt;resize (nr_removed_p);</div>
<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;}</div>
<div class="ttc" id="aclasspcl_1_1_filter_html_a71040236d2c11da75b715d6d6bf5ba9d"><div class="ttname"><a href="classpcl_1_1_filter.html#a71040236d2c11da75b715d6d6bf5ba9d">pcl::Filter::getClassName</a></div><div class="ttdeci">const std::string &amp; getClassName() const</div><div class="ttdoc">Get a string representation of the name of this class.</div><div class="ttdef"><b>Definition:</b> filter.h:182</div></div>
<div class="ttc" id="aclasspcl_1_1_filter_html_a77b899631add791703f5d615f085bede"><div class="ttname"><a href="classpcl_1_1_filter.html#a77b899631add791703f5d615f085bede">pcl::Filter::extract_removed_indices_</a></div><div class="ttdeci">bool extract_removed_indices_</div><div class="ttdoc">Set to true if we want to return the indices of the removed points.</div><div class="ttdef"><b>Definition:</b> filter.h:169</div></div>
<div class="ttc" id="aclasspcl_1_1_filter_html_ae83ccb695ed263cfc64c224210a31936"><div class="ttname"><a href="classpcl_1_1_filter.html#ae83ccb695ed263cfc64c224210a31936">pcl::Filter::removed_indices_</a></div><div class="ttdeci">IndicesPtr removed_indices_</div><div class="ttdoc">Indices of the points that are removed</div><div class="ttdef"><b>Definition:</b> filter.h:163</div></div>
<div class="ttc" id="aclasspcl_1_1_p_c_l_base_html_a09c70d8e06e3fb4f07903fe6f8d67869"><div class="ttname"><a href="classpcl_1_1_p_c_l_base.html#a09c70d8e06e3fb4f07903fe6f8d67869">pcl::PCLBase::input_</a></div><div class="ttdeci">PointCloudConstPtr input_</div><div class="ttdoc">The input point cloud dataset.</div><div class="ttdef"><b>Definition:</b> pcl_base.h:150</div></div>
<div class="ttc" id="aclasspcl_1_1_p_c_l_base_html_aaee847c8a517ebf365bad2cb182a6626"><div class="ttname"><a href="classpcl_1_1_p_c_l_base.html#aaee847c8a517ebf365bad2cb182a6626">pcl::PCLBase::indices_</a></div><div class="ttdeci">IndicesPtr indices_</div><div class="ttdoc">A pointer to the vector of point indices to use.</div><div class="ttdef"><b>Definition:</b> pcl_base.h:153</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a2185a6453f8ad905d7bdf7b45754a160"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a2185a6453f8ad905d7bdf7b45754a160">pcl::PointCloud::width</a></div><div class="ttdeci">uint32_t width</div><div class="ttdoc">The point cloud width (if organized as an image-structure).</div><div class="ttdef"><b>Definition:</b> point_cloud.h:413</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a3ca88d8ebf6f4f35acbc31cdfb38aa94"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a3ca88d8ebf6f4f35acbc31cdfb38aa94">pcl::PointCloud::is_dense</a></div><div class="ttdeci">bool is_dense</div><div class="ttdoc">True if no points are invalid (e.g., have NaN or Inf values).</div><div class="ttdef"><b>Definition:</b> point_cloud.h:418</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a4f34b45220c57f96607513ffad0d9582"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a4f34b45220c57f96607513ffad0d9582">pcl::PointCloud::height</a></div><div class="ttdeci">uint32_t height</div><div class="ttdoc">The point cloud height (if organized as an image-structure).</div><div class="ttdef"><b>Definition:</b> point_cloud.h:415</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_a82e0be055a617e5e74102ed62712b352"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#a82e0be055a617e5e74102ed62712b352">pcl::PointCloud::header</a></div><div class="ttdeci">pcl::PCLHeader header</div><div class="ttdoc">The point cloud header. It contains information about the acquisition time.</div><div class="ttdef"><b>Definition:</b> point_cloud.h:407</div></div>
<div class="ttc" id="aclasspcl_1_1_point_cloud_html_af16a62638198313b9c093127c492c884"><div class="ttname"><a href="classpcl_1_1_point_cloud.html#af16a62638198313b9c093127c492c884">pcl::PointCloud::points</a></div><div class="ttdeci">std::vector&lt; PointT, Eigen::aligned_allocator&lt; PointT &gt; &gt; points</div><div class="ttdoc">The point data.</div><div class="ttdef"><b>Definition:</b> point_cloud.h:410</div></div>
<div class="ttc" id="agroup__common_html_gab978bf1754771246b2f140a5b52a8f8b"><div class="ttname"><a href="group__common.html#gab978bf1754771246b2f140a5b52a8f8b">pcl::copyPoint</a></div><div class="ttdeci">void copyPoint(const PointInT &amp;point_in, PointOutT &amp;point_out)</div><div class="ttdoc">Copy the fields of a source point into a target point.</div><div class="ttdef"><b>Definition:</b> copy_point.hpp:138</div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a377e5aac705db7a2ff0bc00bf090a94f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a377e5aac705db7a2ff0bc00bf090a94f">&#9670;&nbsp;</a></span>PCL_DEPRECATED()</h2>

<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename PointT &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classpcl_1_1_conditional_removal.html">pcl::ConditionalRemoval</a>&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;::PCL_DEPRECATED </td>
          <td>(</td>
          <td class="paramtype">&quot;ConditionalRemoval&lt; <a class="el" href="structpcl_1_1_point_x_y_z_r_g_b_a.html">PointT</a> &gt;(ConditionBasePtr condition, bool extract_removed_indices = false) is&#160;</td>
          <td class="paramname"><em>deprecated</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">&quot; &quot;please use the setCondition(ConditionBasePtr condition) function instead.&quot;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>a constructor that includes the condition. <br  />
 </p>
<dl class="params"><dt>参数</dt><dd>
  <table class="params">
    <tr><td class="paramname">condition</td><td>the condition that each point must satisfy to avoid being removed by the filter </td></tr>
    <tr><td class="paramname">extract_removed_indices</td><td>extract filtered indices from indices vector </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>该类的文档由以下文件生成:<ul>
<li>filters/include/pcl/filters/<a class="el" href="conditional__removal_8h_source.html">conditional_removal.h</a></li>
<li>filters/include/pcl/filters/impl/<a class="el" href="conditional__removal_8hpp_source.html">conditional_removal.hpp</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><b>pcl</b></li><li class="navelem"><a class="el" href="classpcl_1_1_conditional_removal.html">ConditionalRemoval</a></li>
    <li class="footer">制作者 <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1 </li>
  </ul>
</div>
</body>
</html>
